The subject matter disclosed herein relates to computer programs, and more specifically, computer programs that utilize a command interpreter to provide run-time commands after the program has been developed.
Computer programs provide computer-implemented instructions useful for completing one or more goals. One such example of a distributed computer program may be a model versioning manager (MVM). An MVM is a software application that maintains a representation (model) of a system (e.g., a power distribution network). Updates to the model are submitted via multiple systems in a distributed network. The updates are sent in the form of jobs containing additions/deletions/modifications to the model. The MVM maintains the current state of the model as well as the historical changes that have taken place over time. The MVM system can thus provide the version of the entire model as it existed at a particular point in time. The MVM allows the exporting of a model version as a baseline (containing a snapshot of the model at a particular point) or as increments (which are applied to a particular version to bring the model to a new version).
Over time, it may be useful to implement features beyond those which were included in the design and implementation of the computer program. For example, maintenance procedures, control procedures, and/or reporting procedures may be desirable after the computer program has been designed and implemented. For example, in MVMs, the number of model modifications can become quite numerous. Accordingly, a large amount of storage may be necessary to store the model modifications. Thus, it may be desirable to add data purging functionality to the MVMs. Typically, such modification may occur through the use of standard services (e.g., web services). Unfortunately, in many situations, generating functionality using these services can be quite complex and time consuming Thus, in certain situations, the added functionality may not be worth the added complexity and time needed to implement the functionality. Further, updates made through these standard services are often times not expandable.